package pe.edu.upc.dew.grupo7.dao;

import java.util.List;

import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.simple.SimpleJdbcDaoSupport;
import pe.edu.upc.dew.grupo7.model.Funcion;

public class FuncionDaoJdbc extends SimpleJdbcDaoSupport implements FuncionDao {
	FuncionDao funcionDao;
	public Funcion getFuncionPorCodigo(String codigofuncion) {
		return getSimpleJdbcTemplate()
				.queryForObject(
						"select codigofuncion,idSala,codigoPelicula,horario,sitiosDisponible from Funcion where codigofuncion=?",
						new BeanPropertyRowMapper<Funcion>(Funcion.class),
						codigofuncion);
	}

	public void insert(Funcion funcion) {
		getSimpleJdbcTemplate()
				.update("insert into funcion(codigofuncion,idSala,codigoPelicula,horario,sitiosDisponible) values(?,?,?,?,?)",
						funcion.getCodigofuncion(), funcion.getIdSala(),
						funcion.getCodigoPelicula(), funcion.getHorario(),
						funcion.getSitiosDisponibles());
	}

	public void deleteFuncionPorCodigo(String codigofuncion) {
		getSimpleJdbcTemplate().update(
				"delete from funcion where codigofuncion=?", codigofuncion);
	}

	public void updatePorCodigo(String codigoFuncion ) {
		
		Funcion funcion=funcionDao.getFuncionPorCodigo(codigoFuncion);
		getSimpleJdbcTemplate()
				.update("update funcion set horario=?,idSala=?,codigoPelicula=?,sitiosDisponible=? where codigofuncion=?",
						 funcion.getHorario(),
						funcion.getIdSala(), funcion.getCodigoPelicula(),
						funcion.getSitiosDisponibles(),funcion.getCodigofuncion());
	}

	public List<Funcion> getFunciones() {
		return getSimpleJdbcTemplate()
				.query("select codigofuncion,idSala,codigoPelicula,horario,sitiosDisponible from funcion",
						new BeanPropertyRowMapper<Funcion>(Funcion.class));
						
	}

	public void updatePorCodigo(Funcion funcion) {
		// TODO Auto-generated method stub
		
	}



}
